Set the background of the panel window on style changes. (#402144,
authorMatthias Clasen <mclasen@redhat.com>
Mon, 12 Mar 2007 05:51:11 +0000 (05:51 +0000)
committerMatthias Clasen <matthiasc@src.gnome.org>
Mon, 12 Mar 2007 05:51:11 +0000 (05:51 +0000)
2007-03-12  Matthias Clasen  <mclasen@redhat.com>

        * gtk/gtkspinbutton.c (gtk_spin_button_style_set): Set
        the background of the panel window on style changes. (#402144,
        Benjamin Berg)

svn path=/trunk/; revision=17492

ChangeLog
gtk/gtkspinbutton.c

index dc03e32dcc99fee16cf527a162a3d605c09e7f29..6d553ed95c78182fc89807f66b78a7c6bf66788e 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+2007-03-12  Matthias Clasen  <mclasen@redhat.com>
+
+       * gtk/gtkspinbutton.c (gtk_spin_button_style_set): Set
+       the background of the panel window on style changes. (#402144,
+       Benjamin Berg)
+
 2007-03-12  Matthias Clasen  <mclasen@redhat.com>
 
        * gtk/gtkbindings.c (gtk_binding_entry_add_signal): Remove
index bf2e59632b52066e2c9d6d1b7bc976d48b23a8ad..c7d222128d013dcf812d87148bec8cac61f92031 100644 (file)
@@ -110,6 +110,8 @@ static void gtk_spin_button_grab_notify    (GtkWidget          *widget,
                                            gboolean            was_grabbed);
 static void gtk_spin_button_state_changed  (GtkWidget          *widget,
                                            GtkStateType        previous_state);
+static void gtk_spin_button_style_set      (GtkWidget          *widget,
+                                            GtkStyle           *previous_style);
 static void gtk_spin_button_draw_arrow     (GtkSpinButton      *spin_button, 
                                            GtkArrowType        arrow_type);
 static gboolean gtk_spin_button_timer          (GtkSpinButton      *spin_button);
@@ -191,6 +193,7 @@ gtk_spin_button_class_init (GtkSpinButtonClass *class)
   widget_class->focus_out_event = gtk_spin_button_focus_out;
   widget_class->grab_notify = gtk_spin_button_grab_notify;
   widget_class->state_changed = gtk_spin_button_state_changed;
+  widget_class->style_set = gtk_spin_button_style_set;
 
   entry_class->activate = gtk_spin_button_activate;
 
@@ -974,6 +977,19 @@ gtk_spin_button_state_changed (GtkWidget    *widget,
     }
 }
 
+static void
+gtk_spin_button_style_set (GtkWidget *widget,
+                          GtkStyle  *previous_style)
+{
+  GtkSpinButton *spin = GTK_SPIN_BUTTON (widget);
+
+  if (previous_style && GTK_WIDGET_REALIZED (widget))
+    gtk_style_set_background (widget->style, spin->panel, GTK_STATE_NORMAL);
+
+  (* GTK_WIDGET_CLASS (gtk_spin_button_parent_class)->style_set) (widget, previous_style);
+}
+
+
 static gint
 gtk_spin_button_scroll (GtkWidget      *widget,
                        GdkEventScroll *event)